Complexity of mobile devices such as cellular phones, personal data assistants (PDAs), handheld computers, and others, continues to increase. The market for such devices is steadily becoming a worldwide market, requiring the devices to provide content in a number of different languages. Each different platform may further include a variety of options that result in different user interface outputs depending on the options selected.
The user interface of the device provides the mechanism through which the content of an application on the device is displayed to a user. A user interface provides a set of commands or menus through which a user communicates with a program. A command-driven interface is one in which you enter commands. A menu-driven interface is one in which you select command choices from various menus displayed on the screen.
The user interface is one of the most important parts of any program because it determines how easily you can make the program do what you want. A powerful program with a poorly designed user interface has little value. Graphical user interfaces (GUIs) that use windows, icons, and pop-up menus have become standard on personal computers. Accordingly, for the variety of languages that exist, the user interface is adapted to provide the content and commands in the language required. In addition, a matrix of other differences may exist between user interfaces. For example, a user interface may be displayed in portrait or landscape, in different resolutions, with or without a software input panel (SIP), and with a host of other variables. When verifying a user interface through testing, certain aspects displayed on a user interface may change over time that may affect the verification results. For example, a user interface may display a clock. When verifying the user interface for consistency, the clock corrupts the results, because the time displayed will not be consistent. When verifying the user interface, notification of expected changes does not further the analysis of the user interface's consistency. What is needed is a way to remove the clock and other changeable aspects from the analysis of the user interface, such that the verification results are more efficient.